package com.example.demo.common.domain;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class CompensatoryLeaveRecordExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public CompensatoryLeaveRecordExample() {
        oredCriteria = new ArrayList<>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andCidIsNull() {
            addCriterion("cid is null");
            return (Criteria) this;
        }

        public Criteria andCidIsNotNull() {
            addCriterion("cid is not null");
            return (Criteria) this;
        }

        public Criteria andCidEqualTo(Integer value) {
            addCriterion("cid =", value, "cid");
            return (Criteria) this;
        }

        public Criteria andCidNotEqualTo(Integer value) {
            addCriterion("cid <>", value, "cid");
            return (Criteria) this;
        }

        public Criteria andCidGreaterThan(Integer value) {
            addCriterion("cid >", value, "cid");
            return (Criteria) this;
        }

        public Criteria andCidGreaterThanOrEqualTo(Integer value) {
            addCriterion("cid >=", value, "cid");
            return (Criteria) this;
        }

        public Criteria andCidLessThan(Integer value) {
            addCriterion("cid <", value, "cid");
            return (Criteria) this;
        }

        public Criteria andCidLessThanOrEqualTo(Integer value) {
            addCriterion("cid <=", value, "cid");
            return (Criteria) this;
        }

        public Criteria andCidIn(List<Integer> values) {
            addCriterion("cid in", values, "cid");
            return (Criteria) this;
        }

        public Criteria andCidNotIn(List<Integer> values) {
            addCriterion("cid not in", values, "cid");
            return (Criteria) this;
        }

        public Criteria andCidBetween(Integer value1, Integer value2) {
            addCriterion("cid between", value1, value2, "cid");
            return (Criteria) this;
        }

        public Criteria andCidNotBetween(Integer value1, Integer value2) {
            addCriterion("cid not between", value1, value2, "cid");
            return (Criteria) this;
        }

        public Criteria andExeidIsNull() {
            addCriterion("exeId is null");
            return (Criteria) this;
        }

        public Criteria andExeidIsNotNull() {
            addCriterion("exeId is not null");
            return (Criteria) this;
        }

        public Criteria andExeidEqualTo(Integer value) {
            addCriterion("exeId =", value, "exeid");
            return (Criteria) this;
        }

        public Criteria andExeidNotEqualTo(Integer value) {
            addCriterion("exeId <>", value, "exeid");
            return (Criteria) this;
        }

        public Criteria andExeidGreaterThan(Integer value) {
            addCriterion("exeId >", value, "exeid");
            return (Criteria) this;
        }

        public Criteria andExeidGreaterThanOrEqualTo(Integer value) {
            addCriterion("exeId >=", value, "exeid");
            return (Criteria) this;
        }

        public Criteria andExeidLessThan(Integer value) {
            addCriterion("exeId <", value, "exeid");
            return (Criteria) this;
        }

        public Criteria andExeidLessThanOrEqualTo(Integer value) {
            addCriterion("exeId <=", value, "exeid");
            return (Criteria) this;
        }

        public Criteria andExeidIn(List<Integer> values) {
            addCriterion("exeId in", values, "exeid");
            return (Criteria) this;
        }

        public Criteria andExeidNotIn(List<Integer> values) {
            addCriterion("exeId not in", values, "exeid");
            return (Criteria) this;
        }

        public Criteria andExeidBetween(Integer value1, Integer value2) {
            addCriterion("exeId between", value1, value2, "exeid");
            return (Criteria) this;
        }

        public Criteria andExeidNotBetween(Integer value1, Integer value2) {
            addCriterion("exeId not between", value1, value2, "exeid");
            return (Criteria) this;
        }

        public Criteria andDividIsNull() {
            addCriterion("divId is null");
            return (Criteria) this;
        }

        public Criteria andDividIsNotNull() {
            addCriterion("divId is not null");
            return (Criteria) this;
        }

        public Criteria andDividEqualTo(Integer value) {
            addCriterion("divId =", value, "divid");
            return (Criteria) this;
        }

        public Criteria andDividNotEqualTo(Integer value) {
            addCriterion("divId <>", value, "divid");
            return (Criteria) this;
        }

        public Criteria andDividGreaterThan(Integer value) {
            addCriterion("divId >", value, "divid");
            return (Criteria) this;
        }

        public Criteria andDividGreaterThanOrEqualTo(Integer value) {
            addCriterion("divId >=", value, "divid");
            return (Criteria) this;
        }

        public Criteria andDividLessThan(Integer value) {
            addCriterion("divId <", value, "divid");
            return (Criteria) this;
        }

        public Criteria andDividLessThanOrEqualTo(Integer value) {
            addCriterion("divId <=", value, "divid");
            return (Criteria) this;
        }

        public Criteria andDividIn(List<Integer> values) {
            addCriterion("divId in", values, "divid");
            return (Criteria) this;
        }

        public Criteria andDividNotIn(List<Integer> values) {
            addCriterion("divId not in", values, "divid");
            return (Criteria) this;
        }

        public Criteria andDividBetween(Integer value1, Integer value2) {
            addCriterion("divId between", value1, value2, "divid");
            return (Criteria) this;
        }

        public Criteria andDividNotBetween(Integer value1, Integer value2) {
            addCriterion("divId not between", value1, value2, "divid");
            return (Criteria) this;
        }

        public Criteria andEidIsNull() {
            addCriterion("eid is null");
            return (Criteria) this;
        }

        public Criteria andEidIsNotNull() {
            addCriterion("eid is not null");
            return (Criteria) this;
        }

        public Criteria andEidEqualTo(Integer value) {
            addCriterion("eid =", value, "eid");
            return (Criteria) this;
        }

        public Criteria andEidNotEqualTo(Integer value) {
            addCriterion("eid <>", value, "eid");
            return (Criteria) this;
        }

        public Criteria andEidGreaterThan(Integer value) {
            addCriterion("eid >", value, "eid");
            return (Criteria) this;
        }

        public Criteria andEidGreaterThanOrEqualTo(Integer value) {
            addCriterion("eid >=", value, "eid");
            return (Criteria) this;
        }

        public Criteria andEidLessThan(Integer value) {
            addCriterion("eid <", value, "eid");
            return (Criteria) this;
        }

        public Criteria andEidLessThanOrEqualTo(Integer value) {
            addCriterion("eid <=", value, "eid");
            return (Criteria) this;
        }

        public Criteria andEidIn(List<Integer> values) {
            addCriterion("eid in", values, "eid");
            return (Criteria) this;
        }

        public Criteria andEidNotIn(List<Integer> values) {
            addCriterion("eid not in", values, "eid");
            return (Criteria) this;
        }

        public Criteria andEidBetween(Integer value1, Integer value2) {
            addCriterion("eid between", value1, value2, "eid");
            return (Criteria) this;
        }

        public Criteria andEidNotBetween(Integer value1, Integer value2) {
            addCriterion("eid not between", value1, value2, "eid");
            return (Criteria) this;
        }

        public Criteria andDidIsNull() {
            addCriterion("did is null");
            return (Criteria) this;
        }

        public Criteria andDidIsNotNull() {
            addCriterion("did is not null");
            return (Criteria) this;
        }

        public Criteria andDidEqualTo(Integer value) {
            addCriterion("did =", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidNotEqualTo(Integer value) {
            addCriterion("did <>", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidGreaterThan(Integer value) {
            addCriterion("did >", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidGreaterThanOrEqualTo(Integer value) {
            addCriterion("did >=", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidLessThan(Integer value) {
            addCriterion("did <", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidLessThanOrEqualTo(Integer value) {
            addCriterion("did <=", value, "did");
            return (Criteria) this;
        }

        public Criteria andDidIn(List<Integer> values) {
            addCriterion("did in", values, "did");
            return (Criteria) this;
        }

        public Criteria andDidNotIn(List<Integer> values) {
            addCriterion("did not in", values, "did");
            return (Criteria) this;
        }

        public Criteria andDidBetween(Integer value1, Integer value2) {
            addCriterion("did between", value1, value2, "did");
            return (Criteria) this;
        }

        public Criteria andDidNotBetween(Integer value1, Integer value2) {
            addCriterion("did not between", value1, value2, "did");
            return (Criteria) this;
        }

        public Criteria andGidIsNull() {
            addCriterion("gid is null");
            return (Criteria) this;
        }

        public Criteria andGidIsNotNull() {
            addCriterion("gid is not null");
            return (Criteria) this;
        }

        public Criteria andGidEqualTo(Integer value) {
            addCriterion("gid =", value, "gid");
            return (Criteria) this;
        }

        public Criteria andGidNotEqualTo(Integer value) {
            addCriterion("gid <>", value, "gid");
            return (Criteria) this;
        }

        public Criteria andGidGreaterThan(Integer value) {
            addCriterion("gid >", value, "gid");
            return (Criteria) this;
        }

        public Criteria andGidGreaterThanOrEqualTo(Integer value) {
            addCriterion("gid >=", value, "gid");
            return (Criteria) this;
        }

        public Criteria andGidLessThan(Integer value) {
            addCriterion("gid <", value, "gid");
            return (Criteria) this;
        }

        public Criteria andGidLessThanOrEqualTo(Integer value) {
            addCriterion("gid <=", value, "gid");
            return (Criteria) this;
        }

        public Criteria andGidIn(List<Integer> values) {
            addCriterion("gid in", values, "gid");
            return (Criteria) this;
        }

        public Criteria andGidNotIn(List<Integer> values) {
            addCriterion("gid not in", values, "gid");
            return (Criteria) this;
        }

        public Criteria andGidBetween(Integer value1, Integer value2) {
            addCriterion("gid between", value1, value2, "gid");
            return (Criteria) this;
        }

        public Criteria andGidNotBetween(Integer value1, Integer value2) {
            addCriterion("gid not between", value1, value2, "gid");
            return (Criteria) this;
        }

        public Criteria andCsrcIsNull() {
            addCriterion("cSrc is null");
            return (Criteria) this;
        }

        public Criteria andCsrcIsNotNull() {
            addCriterion("cSrc is not null");
            return (Criteria) this;
        }

        public Criteria andCsrcEqualTo(Date value) {
            addCriterion("cSrc =", value, "csrc");
            return (Criteria) this;
        }

        public Criteria andCsrcNotEqualTo(Date value) {
            addCriterion("cSrc <>", value, "csrc");
            return (Criteria) this;
        }

        public Criteria andCsrcGreaterThan(Date value) {
            addCriterion("cSrc >", value, "csrc");
            return (Criteria) this;
        }

        public Criteria andCsrcGreaterThanOrEqualTo(Date value) {
            addCriterion("cSrc >=", value, "csrc");
            return (Criteria) this;
        }

        public Criteria andCsrcLessThan(Date value) {
            addCriterion("cSrc <", value, "csrc");
            return (Criteria) this;
        }

        public Criteria andCsrcLessThanOrEqualTo(Date value) {
            addCriterion("cSrc <=", value, "csrc");
            return (Criteria) this;
        }

        public Criteria andCsrcIn(List<Date> values) {
            addCriterion("cSrc in", values, "csrc");
            return (Criteria) this;
        }

        public Criteria andCsrcNotIn(List<Date> values) {
            addCriterion("cSrc not in", values, "csrc");
            return (Criteria) this;
        }

        public Criteria andCsrcBetween(Date value1, Date value2) {
            addCriterion("cSrc between", value1, value2, "csrc");
            return (Criteria) this;
        }

        public Criteria andCsrcNotBetween(Date value1, Date value2) {
            addCriterion("cSrc not between", value1, value2, "csrc");
            return (Criteria) this;
        }

        public Criteria andCdstIsNull() {
            addCriterion("cDst is null");
            return (Criteria) this;
        }

        public Criteria andCdstIsNotNull() {
            addCriterion("cDst is not null");
            return (Criteria) this;
        }

        public Criteria andCdstEqualTo(Date value) {
            addCriterion("cDst =", value, "cdst");
            return (Criteria) this;
        }

        public Criteria andCdstNotEqualTo(Date value) {
            addCriterion("cDst <>", value, "cdst");
            return (Criteria) this;
        }

        public Criteria andCdstGreaterThan(Date value) {
            addCriterion("cDst >", value, "cdst");
            return (Criteria) this;
        }

        public Criteria andCdstGreaterThanOrEqualTo(Date value) {
            addCriterion("cDst >=", value, "cdst");
            return (Criteria) this;
        }

        public Criteria andCdstLessThan(Date value) {
            addCriterion("cDst <", value, "cdst");
            return (Criteria) this;
        }

        public Criteria andCdstLessThanOrEqualTo(Date value) {
            addCriterion("cDst <=", value, "cdst");
            return (Criteria) this;
        }

        public Criteria andCdstIn(List<Date> values) {
            addCriterion("cDst in", values, "cdst");
            return (Criteria) this;
        }

        public Criteria andCdstNotIn(List<Date> values) {
            addCriterion("cDst not in", values, "cdst");
            return (Criteria) this;
        }

        public Criteria andCdstBetween(Date value1, Date value2) {
            addCriterion("cDst between", value1, value2, "cdst");
            return (Criteria) this;
        }

        public Criteria andCdstNotBetween(Date value1, Date value2) {
            addCriterion("cDst not between", value1, value2, "cdst");
            return (Criteria) this;
        }

        public Criteria andCdescriptionIsNull() {
            addCriterion("cDescription is null");
            return (Criteria) this;
        }

        public Criteria andCdescriptionIsNotNull() {
            addCriterion("cDescription is not null");
            return (Criteria) this;
        }

        public Criteria andCdescriptionEqualTo(String value) {
            addCriterion("cDescription =", value, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionNotEqualTo(String value) {
            addCriterion("cDescription <>", value, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionGreaterThan(String value) {
            addCriterion("cDescription >", value, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("cDescription >=", value, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionLessThan(String value) {
            addCriterion("cDescription <", value, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionLessThanOrEqualTo(String value) {
            addCriterion("cDescription <=", value, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionLike(String value) {
            addCriterion("cDescription like", value, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionNotLike(String value) {
            addCriterion("cDescription not like", value, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionIn(List<String> values) {
            addCriterion("cDescription in", values, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionNotIn(List<String> values) {
            addCriterion("cDescription not in", values, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionBetween(String value1, String value2) {
            addCriterion("cDescription between", value1, value2, "cdescription");
            return (Criteria) this;
        }

        public Criteria andCdescriptionNotBetween(String value1, String value2) {
            addCriterion("cDescription not between", value1, value2, "cdescription");
            return (Criteria) this;
        }

        public Criteria andDurationIsNull() {
            addCriterion("duration is null");
            return (Criteria) this;
        }

        public Criteria andDurationIsNotNull() {
            addCriterion("duration is not null");
            return (Criteria) this;
        }

        public Criteria andDurationEqualTo(Date value) {
            addCriterion("duration =", value, "duration");
            return (Criteria) this;
        }

        public Criteria andDurationNotEqualTo(Date value) {
            addCriterion("duration <>", value, "duration");
            return (Criteria) this;
        }

        public Criteria andDurationGreaterThan(Date value) {
            addCriterion("duration >", value, "duration");
            return (Criteria) this;
        }

        public Criteria andDurationGreaterThanOrEqualTo(Date value) {
            addCriterion("duration >=", value, "duration");
            return (Criteria) this;
        }

        public Criteria andDurationLessThan(Date value) {
            addCriterion("duration <", value, "duration");
            return (Criteria) this;
        }

        public Criteria andDurationLessThanOrEqualTo(Date value) {
            addCriterion("duration <=", value, "duration");
            return (Criteria) this;
        }

        public Criteria andDurationIn(List<Date> values) {
            addCriterion("duration in", values, "duration");
            return (Criteria) this;
        }

        public Criteria andDurationNotIn(List<Date> values) {
            addCriterion("duration not in", values, "duration");
            return (Criteria) this;
        }

        public Criteria andDurationBetween(Date value1, Date value2) {
            addCriterion("duration between", value1, value2, "duration");
            return (Criteria) this;
        }

        public Criteria andDurationNotBetween(Date value1, Date value2) {
            addCriterion("duration not between", value1, value2, "duration");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeIsNull() {
            addCriterion("cdeputyagree is null");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeIsNotNull() {
            addCriterion("cdeputyagree is not null");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeEqualTo(Short value) {
            addCriterion("cdeputyagree =", value, "cdeputyagree");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeNotEqualTo(Short value) {
            addCriterion("cdeputyagree <>", value, "cdeputyagree");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeGreaterThan(Short value) {
            addCriterion("cdeputyagree >", value, "cdeputyagree");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeGreaterThanOrEqualTo(Short value) {
            addCriterion("cdeputyagree >=", value, "cdeputyagree");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeLessThan(Short value) {
            addCriterion("cdeputyagree <", value, "cdeputyagree");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeLessThanOrEqualTo(Short value) {
            addCriterion("cdeputyagree <=", value, "cdeputyagree");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeIn(List<Short> values) {
            addCriterion("cdeputyagree in", values, "cdeputyagree");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeNotIn(List<Short> values) {
            addCriterion("cdeputyagree not in", values, "cdeputyagree");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeBetween(Short value1, Short value2) {
            addCriterion("cdeputyagree between", value1, value2, "cdeputyagree");
            return (Criteria) this;
        }

        public Criteria andCdeputyagreeNotBetween(Short value1, Short value2) {
            addCriterion("cdeputyagree not between", value1, value2, "cdeputyagree");
            return (Criteria) this;
        }

        public Criteria andCdividagreeIsNull() {
            addCriterion("cdividagree is null");
            return (Criteria) this;
        }

        public Criteria andCdividagreeIsNotNull() {
            addCriterion("cdividagree is not null");
            return (Criteria) this;
        }

        public Criteria andCdividagreeEqualTo(Short value) {
            addCriterion("cdividagree =", value, "cdividagree");
            return (Criteria) this;
        }

        public Criteria andCdividagreeNotEqualTo(Short value) {
            addCriterion("cdividagree <>", value, "cdividagree");
            return (Criteria) this;
        }

        public Criteria andCdividagreeGreaterThan(Short value) {
            addCriterion("cdividagree >", value, "cdividagree");
            return (Criteria) this;
        }

        public Criteria andCdividagreeGreaterThanOrEqualTo(Short value) {
            addCriterion("cdividagree >=", value, "cdividagree");
            return (Criteria) this;
        }

        public Criteria andCdividagreeLessThan(Short value) {
            addCriterion("cdividagree <", value, "cdividagree");
            return (Criteria) this;
        }

        public Criteria andCdividagreeLessThanOrEqualTo(Short value) {
            addCriterion("cdividagree <=", value, "cdividagree");
            return (Criteria) this;
        }

        public Criteria andCdividagreeIn(List<Short> values) {
            addCriterion("cdividagree in", values, "cdividagree");
            return (Criteria) this;
        }

        public Criteria andCdividagreeNotIn(List<Short> values) {
            addCriterion("cdividagree not in", values, "cdividagree");
            return (Criteria) this;
        }

        public Criteria andCdividagreeBetween(Short value1, Short value2) {
            addCriterion("cdividagree between", value1, value2, "cdividagree");
            return (Criteria) this;
        }

        public Criteria andCdividagreeNotBetween(Short value1, Short value2) {
            addCriterion("cdividagree not between", value1, value2, "cdividagree");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeIsNull() {
            addCriterion("cgeneralagree is null");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeIsNotNull() {
            addCriterion("cgeneralagree is not null");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeEqualTo(Short value) {
            addCriterion("cgeneralagree =", value, "cgeneralagree");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeNotEqualTo(Short value) {
            addCriterion("cgeneralagree <>", value, "cgeneralagree");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeGreaterThan(Short value) {
            addCriterion("cgeneralagree >", value, "cgeneralagree");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeGreaterThanOrEqualTo(Short value) {
            addCriterion("cgeneralagree >=", value, "cgeneralagree");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeLessThan(Short value) {
            addCriterion("cgeneralagree <", value, "cgeneralagree");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeLessThanOrEqualTo(Short value) {
            addCriterion("cgeneralagree <=", value, "cgeneralagree");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeIn(List<Short> values) {
            addCriterion("cgeneralagree in", values, "cgeneralagree");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeNotIn(List<Short> values) {
            addCriterion("cgeneralagree not in", values, "cgeneralagree");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeBetween(Short value1, Short value2) {
            addCriterion("cgeneralagree between", value1, value2, "cgeneralagree");
            return (Criteria) this;
        }

        public Criteria andCgeneralagreeNotBetween(Short value1, Short value2) {
            addCriterion("cgeneralagree not between", value1, value2, "cgeneralagree");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {
        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}